printer = NULL;
finder->func (printer, finder->data);
-
+
printer_finder_free (finder);
return G_SOURCE_REMOVE;
g_free (finder);
}
-static void
+static void
find_printer (const char *printer,
GFunc func,
gpointer data)
finder->printer_name = g_strdup (printer);
finder->func = func;
finder->data = data;
-
+
finder->backends = NULL;
if (g_module_supported ())
finder->backends = gtk_print_backend_load_modules ();
if (finder->backends == NULL && !finder->found_printer)
g_idle_add (find_printer_idle, finder);
+ else
+ printer_finder_free (finder);
}